草庐IT

c++ - 从命令行编译 Visual C++

全部标签

c++ - 外部限制程序帧率

试图找到一种方法,以类似于VSync的方式从外部限制程序/游戏的帧率,但限制为指定的数字(而不是屏幕刷新率)。在FRAPS中可以看到我的目标的一个完美示例,当录制视频时,帧速率限于录制速率。原因是对于图形密集度不高的快节奏游戏来说,可以阻止帧率大幅变化引起的“屏幕滞后”,但是VSync不适合,因为奇怪的是它会增加键盘/鼠标之间的延迟(两者都以高速率轮询,所以不是硬件问题)。理想情况下寻找C/++中的一些建议,老实说不知道从哪里开始。 最佳答案 我不确定你是否明白你在问什么。FPS游戏的运行方式是,先绘制屏幕,​​处理键盘/鼠标等操作

c - 可以采用大于 255 个字符的路径的 Windows 全路径 API 的替代方案!

windows的_fullpathAPI取相对路径,给出对应的绝对路径。但是,如果相对路径大于255个字符,它将失败。在Windows中有没有其他API可以将相对路径转换为绝对路径并且不存在上述问题? 最佳答案 我认为最接近的是GetFullPathNamefunction.您可以显式调用它的Unicode版本并将\\?\添加到路径以允许超过MAX_PATH个字符。 关于c-可以采用大于255个字符的路径的Windows全路径API的替代方案!,我们在StackOverflow上找到一个

windows - 如何找出哪个用户以编程方式将打印命令发送到 windows/windows 服务器?

我有一个Windows网络(peer-2-peer)以及ActiveDirectory,我需要记录向服务器发送任何类型打印的用户的名称。我想编写一个程序来记录他们的用户名和/或他们各自的IP,我熟悉c#.net和c++,但我没有找到任何关于如何解决我的问题的线索。有没有什么方法可以借助WMI来捕捉他们的名字,或者应该用API弄脏我的手(但我不知道哪个API)?问候。 最佳答案 这些功能在SpoolerAPI下公开.EnumJobs将枚举给定打印机的所有当前作业。它将返回JOB_INFO_1结构,其中包括与给定打印作业关联的用户名:t

c++ - 在 Windows 上安装 C/C++ 库

我现在正在学习(好吧,正在尝试)C,但我仅限于在WindowsXP中工作。我已经设法设置并学习了如何使用Emacs,并且可以使用gcc(至少来自Emacs!)编译简单的C程序,但我已经到了想要安装SDL之类的东西来玩的地步用它。问题是SDL的安装说明表明,在使用MingW的Win32环境中,我需要使用MSYS运行./configure和make/makeinstall来安装SDL,就像在Linux上一样。我注意到,当我解压缩SDL-dev包时(忘记了确切的名称,抱歉)那里有与MinGW目录中的文件夹相对应的文件夹(SDL/include->MinGW/include)。我说的所有./c

c - 用/替换许多文件的脚本是什么样的?

是的,这是一个非常懒惰的问题,但我认为这是人们经常遇到的问题,以至于这里有人已经写了一些东西可以分享。我有大量C文件,其中包含使用Windows相对路径的#include语句。我正致力于在其他操作系统上编译代码(立即在我的OSX开发机器上),并且需要在这些include语句中将所有反斜杠替换为正斜杠。因此,从#include"libs\helper.h"到#include"libs/helper.h"。 最佳答案 sed'/^[]*#[]*include/s:\\:/:g'这应该非常健壮,因为它应该捕获#include的任何合法格式

c - 如何检查程序是否已在当前登录 session 期间执行? ( Windows )

在我正在开发的一个应用程序中(用C语言),在执行主应用程序之前必须先运行一个加载器应用程序。我已经做到了,因此主应用程序在启动时将加载器应用程序作为子应用程序运行,以便自动执行此任务。这一切都很好,除了加载器应用程序只需要在用户当前登录session期间运行一次以使主应用程序正常工作,并且每次主应用程序执行时都必须运行它是一个真正的痛。所以我要问的是:有没有办法检查加载程序是否已经使用某些Windows或C功能运行?理想情况下,这样的事情会很棒,虽然我不知道它是否可能:if(thisapp.exehasBeenExecuted)return;elsespawnl(app_path,ap

c - 持续的虚拟内存增加是否表明内存泄漏?

进程的虚拟内存(私有(private)字节)持续增加是否表明内存泄漏...?我正在使用第三方库。不断使用库导致虚拟内存不断增加。所以它是内存泄漏,可能导致虚拟内存不断增加,也可能是任何其他原因。 最佳答案 我们说不准。一些应用程序在您使用它们时自然会增加内存大小。想一想文字处理器——它的内存使用量会随着您的书写而增加。但是您应该对自己的应用程序的内存使用模式有一个很好的了解,所以您应该能够自己回答这个问题。 关于c-持续的虚拟内存增加是否表明内存泄漏?,我们在StackOverflow上

c++ - ctrl+alt+del 禁止在window操作系统中使用c

如何在Window操作系统中使用C禁用ctrl+alt+del?我试过了SystemParametersInfo(SPI_SETSCREENSAVERRUNNING,true,&bOldState,0);但它对我不起作用。您能否指导我,以便我可以实现。 最佳答案 您使用的SPI_SETSCREENSAVERRUNNING参数是为Windows95上的屏幕保护程序设计的。它适用于Windows95/98/ME及更早版本。它不适用于WindowsNT/2000/XP/Vista。Ctrl-Alt-Del热键组合可以在WindowsNT/

c - 有什么方法可以使用 getaddrinfo() 和 freeaddrinfo() 并且仍然是与旧版 Windows 兼容的程序?

在Winsock2库中,getaddrinfo()和freeaddrinfo()仅在WindowsXP及更高版本中添加。我知道如何在遗留系统中替换它们,但根据Windows版本有条件地使用将无济于事。应用程序不会在9x中启动,并显示一条消息说它链接到WS2_32.dll中丢失的导出。我正在使用MinGW编译和链接代码,并希望继续使用它。也许自己写那些函数?非常感谢你所做的一切。 最佳答案 您可以使用LoadLibrary和GetProcAddress来(尝试)获取getaddrinfo和freeaddrinfo的地址,然后通过指针调

php - 将可能无限数量的参数传递给数组,除了 PHP 命令行脚本中的单个数字变量

我正在尝试制作一个PHP脚本,该脚本将从命令行获取可能无限数量的URL作为参数。我还需要传递一个参数,该参数只能有一个可能的数值(以指定超时),例如:./urltest.php60url1.comurl2.comurl3.com我不确定如何将argv[1]指定为单个数值变量,同时将其余参数(即url列表)放入数组中。也许是这样的:$timeout=$argv[1];$args=func_get_args();functionnumfilter($num){return!is_numeric($num);}$urls=array_filters($args,'numfilter');?提